package com.xzgj.fmmall.dao;

import com.xzgj.fmmall.entity.ShoppingCart;
import com.xzgj.fmmall.generator.GeneratorDAO;
import com.xzgj.fmmall.vo.ShoppingCartVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ShoppingCartMapper extends GeneratorDAO<ShoppingCart> {

    public List<ShoppingCartVO> selectShoppingCartByUserId (int userId);

    public int updateCardNumByCardId(@Param("cartId") int cartId,
                                     @Param("cartNum") int cartNum);

    public List<ShoppingCartVO> selectShoppingCartByCartId (List<Integer> cartIds);

    /**
     * 1.流程：
     * 根据收获地址id，获取收获地址信息（tkmapper）；
     * 根据购物车id，获取购物车信息（需要包含关联查询商品名称、sku名称、库存、商品图片商品价格---> 获取生成商品快照的数据）；
     * 查询库存；
     * 保存订单（tkmapper）；
     * 修改库存（tkmapper）；
     * 保存商品快照（tkmapper）；
     *
     * 2.步骤：
     * 2.1 改造selectShoppingCartByCartId方法
     * 2.1.1 首先改造实体类ShoppingCartVO，添加库存sku_stock字段
     * 2.1.2 xml文件添加映射属性，添加resultVO2，添加返回字段
     */

    //批量删除购物车记录
    public int deleteShoppingCartsByCartIds (List<Integer> cartIds);

}
